angular.module("customFilters",[])
//根据选择产品类别家在数据
.filter("unique",function(){
    return function(data,propertyName){
        if(angular.isArray(data)&&angular.isString(propertyName)){
            var results=[];
            var keys={};
            for(var i=0;i<data.length;i++){
                var val=data[i][propertyName];
                if(angular.isUndefined(keys[val])){
                    keys[val]=true;
                    results.push(val);
                }
            }
            return results;
        }
        else{
            return data;
        }
    }
})

   //根据选择的页码以及每页显示的条数，过滤数据
    .filter("range",function(){
        return function(data,selectedPage,pageSize){
            if(angular.isArray(data) && angular.isNumber(selectedPage) && angular.isNumber(pageSize)){
                var results = [];
                var star_index = (selectedPage-1)*pageSize; //从第几个开始
                if(star_index>=data.length){
                    return [];
                }else{
                   return data.splice(star_index,pageSize);
                }
            }else{
                return data;
            }
        }
    })
    //根据每页显示的条数，计算总页数
    .filter("pageCount",function(){
        return function(data,pageSize){
            if(angular.isArray(data)){
                var results = [];
                var pageCount = Math.ceil(data.length/pageSize);
                for(var i = 0;i<pageCount;i++){
                    results.push(i+1);
                }
                return results;
            }else{
                return data;
            }
        }
    })















